/**
 * App版本更新 API
 * 用于管理App版本更新相关功能
 */

import request from '@/utils/request'

// App版本更新 VO 定义（JavaScript 对象形式）
export const AppVersionVO = {
  // 主键ID
  id: 0,
  // 应用唯一标识
  appId: '',
  // 发布平台
  platform: 0,
  // 商店渠道
  channel: '',
  // 内部版本号整数递增
  versionCode: 0,
  // 对外版本名如 5.8.1
  versionName: '',
  // 更新标题
  title: '',
  // 更新文案，支持换行
  releaseNotes: '',
  // 是否强制升级
  isForce: false,
  // 是否上线
  isEnabled: false,
  // 可做差分的最低版本号
  minCode: 0,
  // 可做差分的最高版本号
  maxCode: 0,
  // 全量包下载地址
  pkgUrl: '',
  // 全量包大小
  pkgSize: 0,
  // 全量包 SHA-256
  pkgHash: '',
  // 差分包地址
  patchUrl: '',
  // 差分包大小
  patchSize: 0,
  // 差分包 SHA-256
  patchHash: '',
  // 正式上线时间
  publishTime: null,
  // 状态（0正常 1停用）
  status: 0
}

// App版本更新 API
export const AppVersionApi = {
  // 查询App版本更新分页
  getAppVersionPage: function(params) {
    return request({
      method: 'get',
      url: '/system/app-version/page',
      params: params
    })
  },

  // 查询App版本更新详情
  getAppVersion: function(id) {
    return request({
      method: 'get',
      url: '/system/app-version/get?id=' + id
    })
  },

  // 新增App版本更新
  createAppVersion: function(data) {
    return request({
      method: 'post',
      url: '/system/app-version/create',
      data: data
    })
  },

  // 修改App版本更新
  updateAppVersion: function(data) {
    return request({
      method: 'put',
      url: '/system/app-version/update',
      data: data
    })
  },

  // 删除App版本更新
  deleteAppVersion: function(id) {
    return request({
      method: 'delete',
      url: '/system/app-version/delete?id=' + id
    })
  },

  // 导出App版本更新 Excel
  exportAppVersion: function(params) {
    return request({
      method: 'get',
      url: '/system/app-version/export-excel',
      params: params,
      responseType: 'blob'
    })
  }
}

export default AppVersionApi